home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2004 #2 / Amiga Plus CD - 2004 - No. 02.iso / AmigaPlus / Tools / Development / RxMUI / Examples / HString.rexx < prev    next >
Encoding:
OS/2 REXX Batch file  |  2004-01-31  |  2.3 KB  |  78 lines

  1. /* HString example */
  2.  
  3. call Init
  4. call createApp
  5. call handleApp()
  6. /* never reached */
  7. /***********************************************************************/
  8. init: procedure
  9.     l="rmh.library";if ~show("L",l) then;if ~addlib(l,0,-30) then exit
  10.     if AddLibrary("rexxsupport.library","rxmui.library")~=0 then exit
  11.     return
  12. /***********************************************************************/
  13. createApp: procedure
  14.     app.Title="HStringExample"
  15.     app.Version="$VER: HStringExample 1.1 (6.12.2002)"
  16.     app.Copyright="©2002 by Alfonso Ranieri"
  17.     app.Author="Alfonso Ranieri"
  18.     app.Description="HString Example"
  19.     app.Base="HSTRING"
  20.  
  21.     app.SubWindow="mwin"
  22.      mwin.Title="HString Example"
  23.      mwin.ID="MWIN"
  24.      mwin.Contents="mgroup"
  25.  
  26.       mgroup.0="lv"
  27.        lv.class="NListview"
  28.        l.format="BAR,BAR,"
  29.        lv.list="l"
  30.         l.Input=0
  31.         l.Format=ParseText("P=%i BAR,P=%r BAR,")
  32.         l.DefaultObjectOnClick=0
  33.  
  34.       mgroup.1="g"
  35.        g.class="group"
  36.        g.horiz=1
  37.          g.0=Label("alfie")
  38.          g.1="hs"
  39.           hs.Class="hstring"
  40.           hs.AlwaysNotifyNC=1
  41.           hs.MaxLen=257
  42.           ch.weight=0
  43.          g.2=button("ch","Clear history")
  44.  
  45.     if NewObj("application","app")~=0 then exit
  46.  
  47.     call Notify("mwin","closerequest",1,"app","returnid","quit")
  48.     call Notify("hs","NewContents","Everytime","app","return","call message(h.newcontents)","TriggerAttr")
  49.     call Notify("ch","Pressed",0,"hs","HSClearHistory")
  50.  
  51.     call DoMethod("l","InsertWrap",ParseText(time()"|%b«HString»|Welcome!"),"bottom","WrapCol2")
  52.  
  53.     call set("mwin","ActiveObject","hs")
  54.     call set("mwin","DefaultObject","hs")
  55.     call set("mwin","open",1)
  56.  
  57.     return
  58. /***********************************************************************/
  59. handleApp: procedure
  60.     ctrl_c=2**12
  61.     do forever
  62.         call NewHandle("app","h",ctrl_c)
  63.         if and(h.signals,ctrl_c)>0 then exit
  64.         if h.event="QUIT" then exit
  65.         else interpret h.event
  66.     end
  67. /* never reached */
  68. /***********************************************************************/
  69. message: procedure
  70. parse arg msg
  71.     if msg="" then return
  72.     msg=time()"|alfie|"msg
  73.     call DoMethod("l","InsertWrap",msg,"bottom","WrapCol2")
  74.     call get("l","insertposition","p")
  75.     call DoMethod("l","jump",p)
  76.     return
  77. /***********************************************************************/
  78.